package com.ruoyi.evalution.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.labdata.domain.LabFile;

/**
 * 实验室评测对象 lab_evalution_topic
 * 
 * @author winner pan
 * @date 2022-08-03
 */
public class LabEvalutionTopic extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 编号 */
    private Long instanceId;

    /** 名称 */
    @Excel(name = "名称")
    private String evalutionName;

    /** 计划结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planEndTime;

    /** 备注说明 */
    @Excel(name = "备注说明")
    private String mark;

    /** 实际结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishedTime;

    /** 状态 */
    @Excel(name = "状态")
    private Integer status;
    
    public String getStatusName(){
    	if(this.status==null || this.status==0){
    		return "编辑中";
    	}
    	return "已提交";
    }
    
    private List<LabEvalutionTopicTask> topicTaskList;
    
    private List<LabFile> images;
    

    public List<LabFile> getImages() {
		return images;
	}

	public void setImages(List<LabFile> images) {
		this.images = images;
	}

	public List<LabEvalutionTopicTask> getTopicTaskList() {
		return topicTaskList;
	}

	public void setTopicTaskList(List<LabEvalutionTopicTask> topicTaskList) {
		this.topicTaskList = topicTaskList;
	}

	public void setInstanceId(Long instanceId) 
    {
        this.instanceId = instanceId;
    }

    public Long getInstanceId() 
    {
        return instanceId;
    }
    public void setEvalutionName(String evalutionName) 
    {
        this.evalutionName = evalutionName;
    }

    public String getEvalutionName() 
    {
        return evalutionName;
    }
    public void setPlanEndTime(Date planEndTime) 
    {
        this.planEndTime = planEndTime;
    }

    public Date getPlanEndTime() 
    {
        return planEndTime;
    }
    public void setMark(String mark) 
    {
        this.mark = mark;
    }

    public String getMark() 
    {
        return mark;
    }
    public void setFinishedTime(Date finishedTime) 
    {
        this.finishedTime = finishedTime;
    }

    public Date getFinishedTime() 
    {
        return finishedTime;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("instanceId", getInstanceId())
            .append("evalutionName", getEvalutionName())
            .append("planEndTime", getPlanEndTime())
            .append("mark", getMark())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("finishedTime", getFinishedTime())
            .append("status", getStatus())
            .toString();
    }
}